﻿
Imports System.Data.SqlClient
Imports System.Data.DataView


Public Class FrmOrdenTrab

    Private oDataAdapter As SqlDataAdapter
    Dim stringsql As String


    Private Sub deshablitacontrol()
        txtnombre.Enabled = False
        txtnroorden.Enabled = False
        txtnumero.Enabled = False
        txtestado.Enabled = False
        dtpfecha.Enabled = False
        dtpfechavenc.Enabled = False

    End Sub
    Private Sub comboestado()
        Dim oDataAdapterB As SqlDataAdapter
        Dim odatatable As New DataTable
        oDataAdapterB = New SqlDataAdapter("SELECT CodActividad, DescActividad FROM dbo.ACTIVIDADES", cn)
        'llenar el dataset
        cn.Open()
        oDataAdapterB.Fill(odatatable)
        cn.Close()
        cmbestado.DataSource = odatatable
        cmbestado.DisplayMember = "DescActividad"
        cmbestado.ValueMember = "CodActividad"
        cmbestado.SelectedValue = 0
    End Sub
    Private Sub llenarempleado()
        Dim oDataAdapterC As SqlDataAdapter
        Dim odatatableB As New DataTable
        oDataAdapterC = New SqlDataAdapter("SELECT * FROM dbo.EMPLEADOS", cn)
        'llenar el dataset
        cn.Open()
        oDataAdapterC.Fill(odatatableB)
        cn.Close()
        cmbempleado.DataSource = odatatableB
        cmbempleado.DisplayMember = "Nombre"
        cmbempleado.ValueMember = "CodEmp"
        cmbempleado.SelectedValue = 0
        'cmbestado.SelectedValue = (dgvpedidos.CurrentRow.Cells("ESTADO").Value.ToString)
    End Sub
    'Private Sub llenarcbobuscar()
    '    Dim oDataAdapterC As SqlDataAdapter
    '    Dim odatatableB As New DataTable

    '    oDataAdapterC = New SqlDataAdapter("SELECT codestadonota, descestadonota FROM dbo.ESTADONOTAS WHERE codtiponota=1 ", cn)
    '    'llenar el dataset
    '    cn.Open()
    '    oDataAdapterC.Fill(odatatableB)
    '    cn.Close()
    '    'combo buscar por estado del pedido
    '    cmbbuscaestado.DataSource = odatatableB
    '    cmbbuscaestado.DisplayMember = "descestadonota"
    '    cmbbuscaestado.ValueMember = "codestadonota"
    '    cmbbuscaestado.SelectedValue = 0
    'End Sub


    Private Sub llenarGrid(ByVal stringsql As String)
        'Abrimos la conexion
        stringsql = "SELECT * FROM VistaPedidosPend WHERE CodTipoNota=1"
        cn.Open()
        Me.oDataAdapter = New SqlDataAdapter(stringsql, cn)
        'Crear el Datasets
        Dim oDataSet As New DataSet
        'Llenamos el Dataset
        Me.oDataAdapter.Fill(oDataSet, "VistaPedidosPend")
        'Cerramos la conexion
        cn.Close()
        dgvpedidos.DataSource = oDataSet.Tables("VistaPedidosPend")
        dgvpedidos.Refresh()
    End Sub
    Private Sub llenarGrid2(ByVal stringsql As String)
        'Abrimos la conexion
        cn.Open()
        Me.oDataAdapter = New SqlDataAdapter(stringsql, cn)
        'Crear el Datasets
        Dim oDataSet As New DataSet
        'Llenamos el Dataset
        Me.oDataAdapter.Fill(oDataSet, "ViewDetaPed")
        'Cerramos la conexion
        cn.Close()
        dgvdetapedido.DataSource = oDataSet.Tables("ViewDetaPed")
        dgvdetapedido.Refresh()
    End Sub


    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnactualizar.Click
        If txtestado.Text = cmbestado.Text Then
            MsgBox("El Pedido ya es encuentra " & "¡" & txtestado.Text & "!")
        Else
            Select Case MessageBox.Show("El Pedido Nro " & txtnumero.Text & " se encuentra " & cmbestado.Text, Application.ProductName, MessageBoxButtons.YesNo, MessageBoxIcon.Question)
                Case System.Windows.Forms.DialogResult.Yes
                    Dim actpedidos As SqlCommand
                    actpedidos = New SqlCommand("dbo.PedidosUpdate", cn)
                    actpedidos.CommandType = CommandType.StoredProcedure
                    actpedidos.Parameters.AddWithValue("@CodEstadoNota", SqlDbType.Int).Value = CInt(cmbestado.SelectedValue)
                    actpedidos.Parameters.AddWithValue("@CodNota", SqlDbType.Int).Value = dgvpedidos.CurrentRow.Cells("CODPEDIDO").Value.ToString

                    Try
                        cn.Open()
                        actpedidos.ExecuteNonQuery()
                    Catch ex As Exception
                        MessageBox.Show(ex.Message)

                    Finally
                        cn.Close()

                    End Try
                    llenarGrid(stringsql)
                Case System.Windows.Forms.DialogResult.No

            End Select

        End If


    End Sub

   
    Private Sub FrmOrdenTrab_Load_1(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        llenarGrid(stringsql)
        deshablitacontrol()
        llenarempleado()
        'llenarcbobuscar()
    End Sub

    Private Sub dgvpedidos_SelectionChanged1(sender As Object, e As System.EventArgs) Handles dgvpedidos.SelectionChanged
        txtnombre.Text = dgvpedidos.CurrentRow.Cells("CLIENTE").Value.ToString
        txtnroorden.Text = dgvpedidos.CurrentRow.Cells("ORDEN_COMP").Value.ToString
        dtpfecha.Value = dgvpedidos.CurrentRow.Cells("FECHA_PEDIDO").Value.ToString
        dtpfechavenc.Value = dgvpedidos.CurrentRow.Cells("FECHA_ENTREGA").Value.ToString
        txtnumero.Text = dgvpedidos.CurrentRow.Cells("NRO_PEDIDO").Value.ToString
        txtestado.Text = dgvpedidos.CurrentRow.Cells("ESTADO").Value.ToString
        comboestado()
        stringsql = "SELECT * FROM ViewDetaped where CodNota=" & dgvpedidos.CurrentRow.Cells("CODPEDIDO").Value.ToString
        llenarGrid2(stringsql)
    End Sub

   

    Private Sub dgvdetapedido_SelectionChanged(sender As Object, e As System.EventArgs) Handles dgvdetapedido.SelectionChanged
        txtcodigo.Text = dgvdetapedido.CurrentRow.Cells("CODIGO").Value.ToString
        txtdescripcion.Text = dgvdetapedido.CurrentRow.Cells("DESCRIPCION").Value.ToString
        txtcantidad.Text = dgvdetapedido.CurrentRow.Cells("CANTIDAD").Value.ToString

    End Sub
End Class